////////////////////////////////////////////////////////////////////////////////
// Filename: cameraclass.h
////////////////////////////////////////////////////////////////////////////////
#ifndef _CAMERACLASS_H_
#define _CAMERACLASS_H_


//////////////
// INCLUDES //
//////////////
#include <d3dx10math.h>

namespace Omen {

    ////////////////////////////////////////////////////////////////////////////////
    // Class name: CameraClass
    ////////////////////////////////////////////////////////////////////////////////
    class DirectX_10_Camera
    {
    public:
        DirectX_10_Camera();
        DirectX_10_Camera(const DirectX_10_Camera&);
        ~DirectX_10_Camera();

        void SetPosition(float, float, float);
        void SetRotation(float, float, float);

        D3DXVECTOR3 GetPosition();
        D3DXVECTOR3 GetRotation();

        void Render();
        void GetViewMatrix(D3DXMATRIX&);

    private:
        float m_positionX, m_positionY, m_positionZ;
        float m_rotationX, m_rotationY, m_rotationZ;
        D3DXMATRIX m_viewMatrix;
    };

} // ~ namespace Omen

#endif